package com.wzy.springstrage;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Map;

/**
 * @Auther: wzy
 * @Date: 2021/12/11/10:13
 * @Description: 表单提交的请求
 * FormSubmitHandler 的 getSubmitType 方法用来获取表单的提交类型（即策略类型），
 * 用于根据客户端传递的参数直接获取到对应的策略实现；
 * 客户端传递的相关参数都被封装为 FormSubmitRequest，
 * 传递给 handleSubmit 进行处理。
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class FormSubmitRequest {

    /**
     * 提交类型
     *
     * @see FormSubmitHandler#getSubmitType()
     */
    private String submitType;

    /**
     * 用户 id
     */
    private Long userId;

    /**
     * 表单提交的值
     */
    private Map<String, Object> formInput;

    // 其他属性
}
